package com.tmxk.api.days03.cyq;


/*
* String、StringBuffer、StringBuilder 三者使用
* 频繁操作(添加、删除、更新)字符串时，建议使用StringBuffer,效率高，内存占用率少
* 跟String频繁操作字符串对比，该方式会频繁创建新的空间，存储数据，效率低，内存占用率高，浪费内存空间
* StringBuffer 和 StringBuilder 堆字符串是相同操作，
* StringBuffer是线程安全的字符串扩展类，StringBuilder是线程非安全的字符串扩展类；
* 常识： 在做项目中，在频繁操作字符时，使用StringBuffer，处理数据效率高，内存占用率少；
* */
public class StringOperDemo {
    //成员变量，成员变量是存放在堆中
    String str = "abc";
    String str1 = "abc";
    String str2 =new String("abc");
    String str3 = new String("abc");

    StringBuffer sb1 = new StringBuffer("abc");
    StringBuffer sb2 = new StringBuffer("abc");


    public void stringMethod(){
        System.out.println(str ==str1);  //true
        System.out.println(str ==str2);  //false
        System.out.println(str2 ==str3);  //false
        System.out.println(str2.intern() == str3.intern()); //true

    }

    public static void main(String[] args) {
        //局部变量，局部变量是存放在栈中
        System.out.println();

    }
}
